package com.qymerge.manage.system.service.impl;

import com.qymerge.manage.system.dao.*;
import com.qymerge.manage.system.service.IWelcomeService;
import com.qymerge.manage.system.dao.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 *<p>Title: WelcomeService</p>
 *<p>Description: </p>
 *
 *@Author cong.zhang
 *@Version 1.0.0
 *@Date 2020/7/27
 *@Time 11:14
 */
@Service
@Slf4j
public class WelcomeServiceImpl implements IWelcomeService {

    @Autowired
    private ISysUserDao sysUserDao;
    @Autowired
    private ISysUserRoleDao sysUserRoleDao;
    @Autowired
    private ISysMenuDao sysMenuDao;
    @Autowired
    private ISysMenuRoleDao sysMenuRoleDao;
    @Autowired
    private ISysRoleDao sysRoleDao;

    /**
     * 判断初始化数据是否存在
     *
     * @return
     */
    @Override
    public boolean isInit() {
        return sysUserDao.ifExistsId(Long.valueOf(-1));
    }

    /**
     * 初始化基础数据
     */
    @Override
    public void initBaseInfo() {
//        //用户信息
//        SysUserRO user = new SysUserRO();
//        user.setId(-1L);
//        user.setCn_name("管理员");
//        user.setUsername("admin");
//        user.setPassword(MD5Utils.md5Hex("admindoctor" + BaseConstants.PWD_SIGN));
//        user.setCreate_time(System.currentTimeMillis());
//        int s_u_num = sysUserDao.save(user);
//        log.info("insert user success num :" + s_u_num);
//
//        //用户角色信息
//        SysUserRoleRO userRole = new SysUserRoleRO();
//        userRole.setId(-1L);
//        userRole.setUser_id(-1L);
//        userRole.setRole_id(-1L);
//        int s_r_num = sysUserRoleDao.save(userRole);
//        log.info("insert user_role success num :" + s_r_num);
//
//        //菜单信息
//        int m_num = 0;
//        SysMenuRO menu = new SysMenuRO();
//        menu.setId(-1L);
//        menu.setMenu_name("系统管理");
//        menu.setMenu_sort(99L);
//        menu.setParent_id(0L);
//        menu.setIcon_cls("cog");
//        m_num += sysMenuDao.save(menu);
//
//        menu = new SysMenuRO();
//        menu.setId(-101L);
//        menu.setMenu_name("菜单管理");
//        menu.setMenu_sort(1L);
//        menu.setParent_id(-1L);
//        menu.setMenu_path("/web/html/module/system/sys_menu.html");
//        m_num += sysMenuDao.save(menu);
//        menu = new SysMenuRO();
//
//        menu.setId(-102L);
//        menu.setMenu_name("角色管理");
//        menu.setMenu_sort(2L);
//        menu.setParent_id(-1L);
//        menu.setMenu_path("/web/html/module/system/sys_role.html");
//        m_num += sysMenuDao.save(menu);
//
//        menu = new SysMenuRO();
//        menu.setId(-103L);
//        menu.setMenu_name("用户管理");
//        menu.setMenu_sort(3L);
//        menu.setParent_id(-1L);
//        menu.setMenu_path("/web/html/module/system/sys_user.html");
//        m_num += sysMenuDao.save(menu);
//        log.info("insert menu :" + m_num);
//
//        //菜单角色信息
//        int m_r_num = 0;
//        SysMenuRoleRO menuRole = new SysMenuRoleRO();
//        menuRole.setId(-1L);
//        menuRole.setMenu_id(-1L);
//        menuRole.setRole_id(-1L);
//        m_r_num += sysMenuRoleDao.save(menuRole);
//        menuRole = new SysMenuRoleRO();
//        menuRole.setId(-2L);
//        menuRole.setMenu_id(-101L);
//        menuRole.setRole_id(-1L);
//        m_r_num += sysMenuRoleDao.save(menuRole);
//        menuRole = new SysMenuRoleRO();
//        menuRole.setId(-3L);
//        menuRole.setMenu_id(-102L);
//        menuRole.setRole_id(-1L);
//        m_r_num += sysMenuRoleDao.save(menuRole);
//        menuRole = new SysMenuRoleRO();
//        menuRole.setId(-4L);
//        menuRole.setMenu_id(-103L);
//        menuRole.setRole_id(-1L);
//        m_r_num += sysMenuRoleDao.save(menuRole);
//        log.info("insert menu_role :" + m_r_num);
//
//        //角色信息
//        SysRoleRO role = new SysRoleRO();
//        role.setId(-1L);
//        role.setRole_name("管理员角色");
//        role.setRole_desc("拥有最大权限，可操作任意功能");
//        role.setCreate_time(System.currentTimeMillis());
//        log.info("insert role success num :" + sysRoleDao.save(role));
    }

}
